import utils

print(r'\这个字符串"不转义"\n')
utils.seperate()

# 注意 ''' 是三个单引号
print('''这段文字
换行
不需要\\n
但是\\n在这里面依然会被转义成换行''')
utils.seperate()

a = 123  # a是整数
print(a)
a = 'ABC'  # a变为字符串, 可见 Python 的变量和js的一样可以多次赋值不同类型, 因为他们都是动态语言
print(a)
utils.seperate()

# 注意下面的原理与java的类似
a = 'ABC'  # 解释器干了两件事情：1. 在内存中创建了一个'ABC'的字符串；在内存中创建了一个名为a的变量，并把它指向'ABC'
b = a  # 解释器创建变量b，并把b指向a指向的字符串'ABC'
a = 'XYZ'  # 解释器创建了字符串'XYZ'，并把a的指向改为'XYZ'，但b并没有更改
print(b)  # 所以，最后打印变量b的结果自然是'ABC'了
utils.seperate()

# 除法相关运算
print(10 / 3)  # /, 除法计算结果是浮点数，即使是两个整数恰好整除，结果也是浮点数
print(10 // 3)  # //，称为地板除，两个整数的除法仍然是整数
print(10 // 4)  # 结果是2, 可见地板除结果不是四舍五入, 而是直接截取整数部分
print(10 % 3)  # 求余运算, 和java一样

'''
Python的整数没有大小限制，而某些语言的整数根据其存储长度是有大小限制的，
例如Java对32位整数的范围限制在-2147483648-2147483647。
Python的浮点数也没有大小限制，但是超出一定范围就直接表示为inf（无限大）
'''
